草庐IT

iOS presentViewController 不调用 viewDidLoad

全部标签

windows - 为内存跟踪应用程序 Hook 调用 HeapAlloc 的僵局

我正在编写一个内存跟踪应用程序,它使用IAT修补机制Hook对HeapAlloc的所有调用。这个想法是捕获对HeapAlloc的所有调用并获得调用堆栈。但是,我目前面临使用DBGHELPApis获取调用堆栈的问题。我发现dbghelpdll本身链接到MSVCRTdll,这种依赖导致递归调用。当我尝试从目标应用程序获取任何调用的调用堆栈时,dbghelp在内部调用MSVCRT中的一些方法,该方法再次调用HeapAlloc。因为我已经修补了MSVCRT,所以它会导致无限循环。有人遇到过这个问题并解决了吗?有没有办法摆脱这种僵局? 最佳答案

windows - 如何编写函数或宏以将参数发送到 gVim for Windows 中的系统调用?

有用的命令:r!date在Windows的gVim(不是Cygwin的gVim)中不是很有用,因为Windows有它自己的日期函数,它不能做我想要的。所以,像:r!c:\cygwin\bin\date会很棒。但这需要输入很多内容。考虑到我可能想用这种方式调用一些东西,编写一个函数会很好,我可以传递一个参数foo并且它会运行:r!c:\cygwin\bin\foo执行此操作的最佳方法是什么?应该是:永久:保存在.vimrc或一些启动文件中。以尽可能少的击键执行。任何关于创建映射的好地方的建议都将受到赞赏。谢谢! 最佳答案 我认为这是一

c++ - 在没有源代码访问权限的情况下修改旧 Windows 程序以在按键后不调用退出

我有一个较旧的C++Windows程序,我被要求在一个学生项目的kiosk风格环境中运行。在主菜单中,按ESC将退出程序,这是不可取的。在过去,我会捕获键盘中断或其他任何东西,并在可能决定所有这些的case语句中引用JMP或CALL的情况下挖掘NOOP,但在Windows上,一切都经过各种注册的事件处理程序,我还没有大约10年没有完成任何Windows内部工作。是否有一个很好的工具可以在某些WM_EVENT(WM_KEYDOWN是主要目标)消息或类似消息上对程序进行断点,以便我可以缩小可执行文件中进行检查的位置?我目前正在退出各种线程清理和最终退出调用之前进行的各种潜在系统调用,但似乎

java - 如何用 Java 编写系统首选项?我可以调用 UAC 吗?

如何使用Java编写系统首选项,使用Preferences.systemRoot()?我试过:Preferencespreferences=Preferences.systemRoot();preferences.put("/myapplication/databasepath",pathToDatabase);但是我收到了这个错误信息:2010-maj-2919:02:50java.util.prefs.WindowsPreferencesopenKeyVARNING:CouldnotopenwindowsregistrynodeSoftware\JavaSoft\Prefsatro

.net - 我应该什么时候调用 MessageQueue.EndReceive()?

我一直在查看处理来自MSMQ的消息的服务的示例代码。在代码中,在ReceiveCompletedEventHandler的开头立即调用EndReceive()方法,然后它开始实际处理消息的任务。只是我,还是这完全忽略了MSMQ可靠性的要点?EndReceive()难道不应该只在消息被完全处理后才被调用吗? 最佳答案 EndReceive仅表示消息已成功传递-它并不暗示您是否能够使用它做任何有值(value)的事情。听起来您正在考虑从MSMQ进行异步事务读取,在这种情况下,您只会在完全处理您的消息后完成收据(一劳永逸地从队列中删除消息

php - 从 PHP 文件调用 Windows 程序(通过命令提示符)

我试过以多种方式调用Windows程序,但每次都得到相同的结果。该程序在我的机器上打开(没有GUI)但从不关闭,这意味着浏览器一直在加载。尽管通过命令行提示手动执行查询字符串时程序会关​​闭。不仅如此,程序实际上并没有执行(它刚刚启动,即没有任何结果)。我只想知道通过PHP启动带有开关的程序的正确方法。这是有效的查询字符串(执行后关闭程序):"C:\ProgramFiles(x86)\Softinterface,Inc\ConvertPowerPoint\ConvertPPT.exe"/S"C:\Users\Farzad\Desktop\upload\test.ppt"/T"C:\Us

windows - 在 MS Windows 中调用窗口的哪些部分?

MSWindows中的窗口由标题栏、工具栏等组成。但是,窗口的主要区域叫什么?如果有多个区域怎么办(比如在Windows资源管理器中,左边是一棵树,右边是目录内容)?这个有通用名称吗?Pane?子窗口?是否有跨操作系统和窗口管理器的统一术语,或者每个WM是否有自己的词汇表? 最佳答案 看这里:http://msdn.microsoft.com/en-us/library/ms632597%28VS.85%29.aspx 关于windows-在MSWindows中调用窗口的哪些部分?,我们

Windows编程使用mingw和system()函数调用用法

我有Unix编程背景,在将我的系统从Unix移植到Windows时遇到了一个独特的行为/问题。[我对Windows开发还很陌生,所以下面的问题可能看起来太明显了。]我正在使用mingw进行移植,问题是关于Unix中提供的“system()”调用和WEXITSTATUS选项。问题在Unix中,要执行任何命令/脚本,我们有使用system()调用的代码。同样在mingw中编译-但我想知道unix和Windows版本的system()调用之间的行为是否有任何变化。windows版本的system()调用在mingw的标准库中提供,但我无法获得确切的行为。我的第二个问题是关于WEXITSTAT

windows - 从批处理文件中,如何在调用 taskkill.exe 后等待进程退出?

我想编写一个批处理文件来更新正在运行的进程(一个常规应用程序)正在使用的DLL。为此,计划是停止进程,将DLL复制到所需位置,然后重新启动进程。我知道我可以尝试使用taskkill终止进程。在我拍摄它之后,如何确保该过程已经倒下并死亡? 最佳答案 这是我用过的。它是批处理文件中的一个子程序。settasklist=%windir%\System32\tasklist.exesettaskkill=%windir%\System32\taskkill.exe---------------------------------------

c++ - 调用dll函数时参数对象的成员变量的内存地址发生变化

类SomeClass{//一些成员MemberClassone_of_the_mem_;我在dll中有一个函数foo(SomeClass*object),它是从exe调用的。问题one_of_the_mem_的地址在调度dll调用期间发生变化。详细信息:在调用之前(从exe):'&(this).one_of_the_mem_'-`0x00e913d0`之后-在dll本身中:'&(this).one_of_the_mem_'-`0x00e913dc`对象的地址保持不变。只有地址每次移动c的成员。我需要一些关于如何解决这个问题的建议。代码:Exe代码stat=module->init(th